Sound.setTransform()

Доступность

Flash Player 5.

Синтаксис

my_sound.setTransform(soundTransformObject:Object) : Void

Параметры

soundTransformObject Объект, созданный при помощи конструктора встроенного класса Object.

Возвращает

Ничего.

Описание

Метод; устанавливает трансформацию звука (баланс) для объекта Sound.

Параметр soundTransformObject есть объект, создаваемый при помощи конструктора класса Object и определяющий баланс звука в каждом из динамиков.

Звуки занимаются определенный объем памяти и места на диске. Так как стереозвук занимает в два раза больше места, чем моно, обычно лучше использовать 22-KHz 6-bit моно звук. При помощи setTransform() Вы можете проигрывать моно звуки как стерео, стерео — как моно, а также добавлять интересные эффекты в звучание.

Свойства объекта soundTransformObject перечислены ниже:

11 Процент, определяющий уровень левого канала в левом динамике (0-100).

1r Процент, определяющий уровень правого канала в правом динамике (0-100).

rr  Процент, определяющий уровень правого канала в правом динамике (0-100).

rl  Процент, определяющий уровень левого канала в правом динамике (0-100).

Результат вычисляется по следующей формуле:

leftOutput = left_input * ll + right_input * lr
rightOutput = right_input * rr + left_input * rl

Значения left_input и right_input определяются тем, стерео или моно звук используется.

По умолчанию стереозвук имеет следующие параметры:

ll = 100
lr = 0
rr = 100
rl = 0

Моно звуки по умолчанию имеют такие параметры:

ll = 100
lr = 100
rr = 0
rl = 0

Пример

В следующем примере показывается, как можно использовать setTransform() для достижения эффекта, которого не добьешься при помощи setVolume() и setPan() при совместном применении.

В следующем коде создается новый объект soundTransformObject и его свойства устанавливаются таким образом, что оба канала проигрываются через левый динамик с максимальной громкостью.

var mySoundTransformObject:Object = new Object();
mySoundTransformObject.ll = 100;
mySoundTransformObject.lr = 100;
mySoundTransformObject.rr = 0;
mySoundTransformObject.rl = 0;

Чтобы применить объект soundTransformObject к объекту Sound, необходимо передать его методу setTransform() в качестве параметра:

my_sound.setTransform(mySoundTransformObject);

В следующем примере стереозвук проигрывается как моно; объект soundTransformObjectMono имеет такие параметры:

var mySoundTransformObjectMono:Object = new Object();
mySoundTransformObjectMono.ll = 50;
mySoundTransformObjectMono.lr = 50;
mySoundTransformObjectMono.rr = 50;
mySoundTransformObjectMono.rl = 50;
my_sound.setTransform(mySoundTransformObjectMono);

В следующем примере половина громкости левого канала переносится на правый динамик; объект soundTransformObjectHalf имеет следующие параметры:

var mySoundTransformObjectHalf:Object = new Object();
mySoundTransformObjectHalf.ll = 50;
mySoundTransformObjectHalf.lr = 0;
mySoundTransformObjectHalf.rr = 100;
mySoundTransformObjectHalf.rl = 50;
my_sound.setTransform(mySoundTransformObjectHalf);

var mySoundTransformObjectHalf:Object = {ll:50, lr:0, rr:100, rl:50};

Также см. пример для Sound.getTransform().

См. также

Класс Object, Sound.getTransform()